Disclosed is a system for a dynamic display of a summation in a collapsible hierarchical table. In particular, the present application describes a tool for maintaining a proper summation as a hierarchical table is expanded from a general view to a more detailed view and vice versa.
Hierarchical tables that display items at different levels of granularity are frequently used in software design. They are a quick and efficient means to compare a list of items with the same features. Typically, a line in the table shows the item together with a set of numeric and/or alphanumeric features of the item. Numeric features are often summed, such as in the table of FIG. 1. In more detail, FIG. 1 illustrates an exemplary collapsed hierarchical table. The exemplary hierarchical table 100 displays a company structure with nodes 110 and 120. Node 110 represents a division within the company called “My Company—Germany”, while node 120 represents another division within the company called “My Company—U.S.” Elements 115 and 125 are assigned to respective nodes 110 and 120, and each value represents a total number of employees at the respective division within the company. Node 150, called “Total”, is assigned a value 155 that is a sum total of all the values in the table, i.e., 115 and 125. For example, the “My Company—Germany” (node 110) division of the company structure has “50” (element 115) employees, while “My Company—U.S.” (node 120) division of the company structure also has “50” (element 125) employees. The “Total” (150) number of employees being the sum of “50” (element 115) and “50” (element 125), which is “100” (element 155) employees. Each node 110, 120 and subnodes (not shown) have an collapsed/expanded icon adjacent to the node name. In FIG. 1, the nodes 110, 120 are shown collapsed, so the icon 112 is shown as an up arrow (↑). Although the illustrated example is presented in terms of a company structure and a number of employees, any other list of items and an assigned value that includes a totaling operation may be used. The subject matter of the example should not be considered limiting.
In the display of sums in collapsible hierarchical tables as in FIG. 2A, a problem occurs when amounts are listed (in the illustrated example: “Employees”) both on abstract and more detailed levels, then the summation is no longer correct. For example, the table 100 is shown with node 110 expanded, and the icon 112 is replaced with expanded icon 113, which here is shown as a rightwards arrow (→). The expansion of node 110 reveals subnodes 230 “My Company—Heidelberg” and 240 (“My Company—Berlin”). Node 230 has the expanded icon 113 adjacent to it which indicates that it is also expanded to reveal subnodes 231 (“My Company—Heidelberg Centrum”) and 233 (“My Company—Heidelberg Area”). In the example of FIG. 2A, all of the elements 115, 235, 237, 239 245 and 125 that are respectively assigned to each of odes 110, 120 and subnodes 230, 231 and 233 are also shown. That is, the values “50” (element 115), “25” (element 235), “15” (element 237), “10” (element 239), “25” (element 245) and “50” (element 125) in each table line are still correct but the vertical summation (element 155) over all lines in the table will display amounts that are double the actual count (i.e., 100), or worse. The user summation of total employees 155 based on simply visualization (e.g., quick glance at the individual values) is incorrect, which is confusing for the end users. Hence, the table has lost one of its' attractive features. Since end users frequently do high-level checks by visualization on such summations to confirm the correctness, but now the total value 155 clearly does not correspond to the values 115, 235, 237, 239, 245, and 125 presented.
This problem also occurs, for instance, in commonly used desktop programs such as Excel™. To correctly display the summation of the amount column one can for instance decide to list the sums at the most detailed level only, i.e., the most abstract level. In FIG. 2B, the sum of the displayed values (elements 115 and 125) equals the displayed total (element 155) but the user does not have any information on the values corresponding to the lower abstraction levels, i.e., the subnode “My Company—Heidelberg” and further subnodes “My Company—Heidelberg Centrum”, “My Company—Heidelberg Area”, or subnode “My Company—Berlin.” This information is usually available, and required by end users. Hence, the solution illustrated in FIG. 2B is not often favored.
In the alternative shown in FIG. 2C, the user has the advantage of having the most detailed amounts visible in the table. For example, the lowest subnodes (231, 233) in the hierarchical table 100 are displayed. However, the sum of the displayed amounts (237, 239), again does not match the total amount (155). As shown, the values of elements 237 and 239 only total “25”, but the total amount 155 in the Total 150 line is shown as the value “100”. This view of table 200 is disfavored as the user is not presented with an accurate view of the total at the selected level of abstraction. A final alternative is to add additional columns to the table 200 reflecting the amounts by abstraction level, or subnodes. This approach also uses a large amount of display device real estate, and, hence, is also not popular.
Accordingly, the inventor recognizing the need for and benefits of accurately depicting summation values in a hierarchical table, and developed a solution that provides the user with an accurate summation at all levels of abstraction.